

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>The Debug Toolbars [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Debug,Debug Toolbar,Toolbar,Toolbar Debug">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">The Debug Toolbars</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="invoking_methods.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="runtime_inspection.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_BodyText"><span class="f_BodyText">The </span><span class="f_UIControl">Debug</span><span class="f_BodyText"> window toolbar hosts all the important options you use during a <a href="using_the_debugger.htm">debug session</a>.</span></p>
<p class="p_TextIndentedL2"><img src="debug%20toolbar%201.png" width="273" height="25" border="0" alt="debug toolbar 1"></p>
<p class="p_BodyText"><span class="f_BodyText">Two of the buttons toggle: the </span><span class="f_MenuKeyField">Pause/Resume</span><span class="f_BodyText"> button and the </span><span class="f_MenuKeyField">Enable/Disable Editor Update</span><span class="f_BodyText"> button.</span></p>
<p class="p_TextIndentedL2"><img src="debug%20toolbar%20a.png" width="41" height="26" border="0" alt="debug toolbar A"><img src="debug%20toolbar2.png" width="231" height="28" border="0" alt="debug toolbar2"></p>
<p class="p_BodyText"><span class="f_BodyText">From left to right the toolbar buttons are as follows:</span></p>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 4px 2px 4px 2px;"><table cellspacing="2" cellpadding="2" border="0" style="border: none; border-spacing:2px;">
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">Debug/Build</span><span class="f_Tabletext"> menu, which provides quick access to the following options:</span></p>
<ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext" style="font-weight: bold;">Debug</span><span class="f_Tabletext"> - run the debugger</span></li>
<li><span class="f_Tabletext" style="font-weight: bold;">Build</span><span class="f_Tabletext"> - run package build scripts</span></li>
<li><span class="f_Tabletext" style="font-weight: bold;">Test</span><span class="f_Tabletext"> - run package test scripts</span></li>
<li><span class="f_Tabletext" style="font-weight: bold;">Run</span><span class="f_Tabletext"> - run debug</span></li>
<li><span class="f_Tabletext" style="font-weight: bold;">Package Build Scripts</span><span class="f_Tabletext"> - configure package build scripts</span></li>
</ul>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Run Debugger [F6]</span><span class="f_Tabletext"> Both initiates debugging and continues execution of a thread that has been halted by a breakpoint.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Pause/Resume debug execution</span><span class="f_Tabletext"> Enables you to temporarily halt execution of every thread in the process being debugged, or resume execution after it has been paused. Clicking on any button also resumes execution. The </span><span class="f_MenuKeyField">Pause</span><span class="f_Tabletext"> button displays in red while execution is suspended.</span></p>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 4px 2px 4px 2px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" bgcolor="#efeff7" style="background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td bgcolor="#f7f7ff" style="background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">Pausing execution undermines the validity of the stack trace and local variable information displayed in any of the debug windows; after pausing, this information should not be relied upon.</span></p>
</td>
</tr>
</table>
</div>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Stop Debugger [Ctrl]+[Alt]+[F6]</span><span class="f_Tabletext"> Terminates debugging. The debuggee process is immediately halted, and the debug platform closed. All debug output (local variables and stack) are cleared. The workbench is closed.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Step Over [Alt]+[F6] </span><span class="f_Tabletext"> C</span><span class="f_Tabletext">auses the debugger to run until the next physical line of code after the current line or, if no further line exists in the method, at the next line in the caller if the method has a caller; that is, the stack depth is greater than one.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Step Through </span><span class="f_Tabletext"> Is</span><span class="f_Tabletext"> most useful while recording a debug session. The button initiates the same behaviour as the </span><span class="f_MenuKeyField">StepOver</span><span class="f_Tabletext"> button, except that it records intermediate method calls made between lines. If you are recording and you click on the </span><span class="f_MenuKeyField">StepOver</span><span class="f_Tabletext"> button, any method called between lines is not recorded. The </span><span class="f_MenuKeyField">Step Through</span><span class="f_Tabletext"> button causes the debugger to step into any method executed at the current line, and any subsequent method called when the button is clicked. The debugger continues to step until it arrives back at the next line.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Step In [Shift]+[F6]</span><span class="f_Tabletext"> I</span><span class="f_Tabletext">nstructs the debugger to try and step over every line of physical code that the thread is executing. However, the debugger ignores any call to a namespace, function class or method that does not exist in the model. That is, only code either generated within Enterprise Architect or imported into the model is executed.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Step Out [Ctrl]+[F6] </span><span class="f_Tabletext"> Instruct</span><span class="f_Tabletext">s the debugger to run until the current method exits and, if the method has a caller (stack depth &gt; 1), to stop at the next line of code in the calling method.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Show Execution Point</span><span class="f_Tabletext"> O</span><span class="f_Tabletext">nly enabled when a thread has encountered a breakpoint. The button displays the source code file in an editor window with the current line of code highlighted for the thread that has the current focus. (If only one thread is suspended, that thread has focus; otherwise, a thread has focus if it is selected in the </span><span class="f_UIControl">Stack</span><span class="f_Tabletext"> tab. If no thread is selected, the first suspended thread has the focus.)</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Show/Hide lines during recording</span><span class="f_Tabletext"> Disables and enables update of the editor window with the current line of executing source code. </span><span class="f_Tabletext">During automatic recording of a thread, time is spent updating the editors with the current line of executing code. To speed up execution in debugging larger applications, you can disable this highlighting in any editors.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="24" style="width:24px;"><ul style="text-indent: 0px; margin-left: 15px; list-style-position: outside;">
<li><span class="f_Tabletext"></span></li>
</ul>
</td>
<td valign="top" width="846" style="width:846px;"><p class="p_Tabletext"><span class="f_MenuKeyField">Record Stack Trace</span><span class="f_Tabletext"> Starts recording the trace history. Recording occurs for the currently suspended thread. The stack history is cleared ready to accept the new trace history.</span></p>
</td>
</tr>
</table>
</div>




            </div>
          </div>
        </div>



</div>


</body>
</html>
